草庐IT

TypeScript 模块

全部标签

javascript - 如何在 typescript 文件中使用 json 文件

我有一个名为men.json的文件。我想做等同于varmen=require('./men.json');。无论我尝试过什么,它都会寻找./men.json.js文件。我读到我不能使用import,因为它不是ts文件。什么是等效的要求行? 最佳答案 declaremodule'*.json'{var_:any;exportdefault_;}然后你可以importmemfrom'./mem.josn'将其放入tsconfig.json中包含的某个文件中现在您可以要求.json,这适用于任何其他文件格式(尽管您需要webpack,因为

javascript - 在 Angular2 CLI 中使用外部 javascript AMD 模块

当我使用Angular2预发布版时,我不得不使用systemjs为了使用外部javascript库,即基于AMD模块的ESRIArcGISJavaScriptAPI(尽管可以输入类型)。现在我想迁移到Angular2CLI。但是,在Angular2从systemjs移动后,我看不到如何导入外部库(如arcgis)至webpack并且没有webpack.config要修改的文件。外部库存储在:示例:在我的Angular组件中,我需要以某种方式导入这些组件,例如:importmapfrom'esri/map';导入'https://js.arcgis.com/3.19/esri/map.j

javascript - 如何为 'ws' Web-Socket 模块创建自定义事件?

是否可以为NodeJS中的“ws”websocket模块创建自定义事件发射器和监听器(就像socket.io中的那样)。如果是这样,我该如何实现?//这是我想要实现的(反之亦然)://listeningonserverWebSocket.on('connection',function(ws){ws.on('myCustomEvent',function(data){//dosomethingwiththedata});});//emittingfromclientsocket.emit('myCustomEvent',data); 最佳答案

javascript - 无法将 react 模块加载为节点模块

我在路径中有一个react组件源/组件/测试importReactfrom'react';importReactDomfrom'react-dom';classTestCompextendsReact.Component{}exportdefaultTestComp;我正在从路径中公开index.js中的组件src/index.jsimportTestCompfrom'./components/test';export{TestComp};我在package.json中添加了main作为"main":"src/index.js"我已经发布了上述应用程序的npm包test-comp并在另

javascript - Jasmine 测试用例未在已编译的 Typescript 中定义内启动

我正在处理一个测试项目,我正在编写一个纯JavascriptJasmineKarma设置来测试预编译的Typescript设置。但是,我无法启动测试用例。我可以在控制台中看到来自已编译typescript的控制台消息正常运行,但它根本不会启动测试脚本。请注意,这来自AngularApp,但这整个部分来自一个在没有Angular2的情况下制作和编译的部分。没有错误消息,除此之外显示运行了0/0测试,并且没有“component/to/test”的时间戳。在test.spec.js文件中,我有define("testName",["component/to/test"],function(

javascript - typescript 介意对象文字中实例化的顺序吗?

我使用的是最新的Typescript版本:2.6.2。我遇到了一个奇怪的情况,如果我执行foo({a:1,b:2})-事情不起作用,而如果我执行:foo({b:2,a:1})-它们确实有效。我有一个通用类,一个具有2个属性和一个函数的接口(interface)。代码如下:classMyClass{value:T;next(value:T):void{}}exportenumStateKey{backlogItems='backlogItems'}exportinterfaceState{backlogItems:number[];[key:string]:any}classA{priv

javascript - TypeScript 和 Angular,执行顺序在这

我在Angular应用程序中有以下代码,html看起来像这样。onSubstringSelect在组件的.ts部分:onSubstringSelect(item:any){constdataPois=this.getPois(data);alert("2ndalert"+dataPois);//etc}getPois(data):any[]{this.api.getPois(data).subscribe((result:any)=>{alert("1stalert");returnresult.pois;}},(error:any)=>{console.error('error',e

javascript - 使用模块模式和实例化新对象之间的区别

我正在尝试重构一些javascript,但我对模块模式感到困惑。我现在的一种方法是简单地声明一个包含组件所有功能的类varFoo=function(){this.Bar={};...}并创建一个新实例以在组件中使用。但我也读过模块模式,我看不出与我所拥有的相比有什么好处,因为它似乎做的差不多,只是以更复杂的方式。也许我只是没有遇到让它成为更好选择的案例。例如,这样的模式:varmodule=(function(){//privatevariablesandfunctionsvarfoo='bar';//constructorvarmodule=function(){};//protot

javascript - 将依赖项注入(inject) ES2015 模块

是否可以像C#或Java等其他编程语言一样将依赖项注入(inject)ES2015模块?如果我导入一个模块,我就会对它产生硬依赖,并且以后在运行时无法更改它。例如,我有以下JavaScript代码:importAnimalfrom'./dog';classPerson{feedAnimal(){newAnimal().feed();}}我正在导入狗模块。但是如果我想把它变成一只猫呢?目前我必须手动修改第1行,但在某些情况下我希望它可以从外部进行配置,以便在某些情况下应该有一只猫,而在其他一些情况下它应该是一只猫。经典依赖注入(inject)可以完成的所有事情。我知道有一些DI框架,比如

javascript - 调试 gf3/sandbox 模块

我正在node.js中做我的初级步骤,我正在尝试了解沙箱机制。目前我正在使用Nodev4.0.0和Node检查器v0.12.3。我已经安装了gf3/sandbox模块并使用这个简单的代码运行它:vars=newSandbox();s.run('1+1+"apples"',function(output){console.log(output.result);});为了方便调试,我还在sandbox.js文件中注释了timeout函数://timer=setTimeout(function(){//self.child.stdout.removeListener('output',out